1. Field of the Invention
The present invention relates to a data converting apparatus and method, printing apparatus and method, printing controlling apparatus and method, printing system and method and a data transmitting method, suitable for use in a system in which a printer and a plurality of print data transmitters are connected to a common serial bus and connected to each other by a method conforming to the IEEE (Institute of Electrical and Electronics Engineers) 1394 standard for example to make a printing work at a printing unit.
2. Description of the Related Art
Conventionally, the printing work made by a printer uses a printer control code (called “escape sequence”) to control the printing work and a page-description language (PDL) which is an image depiction programming language. These printer control code and page-description language are available in tens of types correspondingly to the series of printers and printer manufacturers, and further in hundreds of types including ones classified in detail by printer type.
The above page-description languages include ESC/P and ESC/Page from Seiko-Epson, LIPS from Canon, PCL (HP-PCL) from Hewlett-Packard, PostScript from Adobe Systems, etc. The PDL languages classified in further detail include PCL3 and PLC5 (series of the PCL), and further the PCL3 is partially modified and defined for each of the printers as the case may be.
Besides, the page-description languages not dependent on the printer manufacturers include ISO/IEC 10180: SPDL (standard page-description language) (December, 1995) etc. which however have not spread so widely because of the compatibility with the page-description languages used in the past.
As a method for establishing a physical connection between a print data transmitter which holds print data and information on a printing and a printer, there are available methods defined in the IEEE (Institute of Electrical and Electronics Engineers) 1284, USB (universal serial bus), IEEE 1394 SBP (serial bus protocol) 2, and IEEE 1394 DPP (direct print protocol).
The above IEEE 1284 is featured by the compatibility with the Centronics, basic point-to-point connection between a personal computer (PC) as a print data transmitter and a printer, and transmitting of data when the printer is not busy (push transaction).
The above USB is featured by the possible connection between a single host unit and 127 node units, management of all the node units by the host unit, and the basic principle that data is transferred between the host unit and node units but data cannot be transferred directly between the node units.
The above IEEE 1394 SBP2 prescribes the arrangement for issuing a command from a major control unit (initiator) connected to a serial bus to a controlled unit (target) connected also to the serial bus, and arrangement for transferring a series of data and statuses appended to a command issued from the initiator. Further, this IEEE 1394 SBP2 prescribes a framework for appending an SCSI (small computer system interface) command set as a high-order command set, and it is featured by the service of a memory shared by both the initiator (print data transmitter) and target (printer), and read and write from and to the common memory existent at the initiator side by the target.
The above IEEE 1394 DPP is a data transfer protocol (thin protocol) and prescribes no function to provisionally reserve a processing command at the printer side, and is featured by the possible broadcast-to-broadcast physical connection.
Connection of a plurality of controllers and a plurality of targets to the serial bus according to the above standards will incur the following problems.
That is, the IEEE 1284 prescribes no function to reserve a control command transmitted from another unit to a printer when the printer is in the course of printing, namely, when it is busy. Therefore, the IEEE 1284 is not suitable for use in an environment in which many AV units and PCs are connected to the serial bus conforming to the IEEE 1284.
Also the USB prescribes that only one host unit should be used to manage node units connected thereto, and so it is not suitable for practical use since a large load will be applied to the host unit in an environment in which many AV units and PCs are connected to the USB serial bus.
Further, the IEEE 1394 SBP2 enables a broadcast-to-broadcast connection by utilizing the physical connection prescribed in the IEEE 1394, but this protocol is not suitable for use in an environment in which many AV units and PCs are connected to the 1394 serial bus.
Moreover, since the IEEE 1394 DPP has no function to provisionally hold a processing command at the printer side, so it cannot deal with printing requests from two or more AV units and PCs connected in the printing system.
Other problems take place when a plurality of controllers uses different printer control codes and page-description languages. In an environment in which many AV units and PCs are connected to the 1394 serial bus, the printer is highly required to be compatible with the printer control code and page-description language. However, it has been proved that when no printer driver compatible with the printer as a target is provided at the controller side, no printing work can be done in many cases.
To avoid the above-mentioned problems, it has been proposed to connect a print data transmitter and printer to the IEEE 1394 serial bus and effect a printing work according to the AV/C printing protocol using the AV/C command (AV/C digital interface command set).
With such an AV/C printing protocol, the printer side can reserve control commands such as a print data transmitting command or the like provisionally and effect steps of a printing work in the order of the reserved control commands, according to a command protocol called “FCP (function control protocol) common to AV/C protocols.
Also, each of the nodes (units) connected to each other via the IEEE 1394 serial bus can freely be a data source or destination and connected in the broadcast-to-broadcast manner on the serial bus, and a point-to-point connection and one-to-broadcast connection can be established for transfer of print data.
A printer operative according to the AV/C printing protocol featured as mentioned above can be compatible with a broadcast-to-broadcast connection in an environment in which may AV units and PCs are connected to the IEEE 1394 serial bus.
With regard to transmitting of print data and printing control commands according to the AV/C printing protocol, however, there have only been defined sRGB data of raw type and image files such as TIFF, JPEG, Exif, etc. as types of print data.
Therefore, currently, in the printing work according to the conventional AV/C printing protocol, the print data transmitter cannot designate any type of print data by the page-description language. Also, even when the printer side receives print data but if the latter is described in a page-description language not supported by the printer side, it cannot be printed. This problem will take place more frequently when many units of different types are connected to the IEEE 1394 serial bus.